# test case 0
# pc old out
0001100111111001
# pc new out
0011001000010011
# aluresult
01111001011111101111111010111110
# zero
-
# wrdata
01111001010111101111101000001110
# aluop
ALU_OR
# alusrc1
0
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01100001001011001110011010111000
# readdata2
01111001010111101111101000001110
# imm
01011000011110010001100000011010
# branchtype
BR_NOP
# memread
1
# memwrite
0
# memtype
MEM_HU
# wb rd
01001
# wb write
1
# wb src
WBS_MEM

# test case 1
# pc old out
1010110011101101
# pc new out
1010110011101101
# aluresult
01001111101101001110111110110010
# zero
-
# wrdata
00001001110010111100111110110001
# aluop
ALU_ADD
# alusrc1
1
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01100100110001111011101010111010
# readdata2
00001001110010111100111110110001
# imm
01001111101101000100001011000101
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
10001
# wb write
1
# wb src
WBS_ALU

# test case 2
# pc old out
1000011111100100
# pc new out
1110000011110101
# aluresult
10110100000110111001011111011111
# zero
0
# wrdata
01100011000110111010101101001111
# aluop
ALU_SUB
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01111111111101101111000011110000
# readdata2
01100011000110111010101101001111
# imm
01001011111001001111000000000101
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
00101
# wb write
0
# wb src
WBS_OPC

# test case 3
# pc old out
0110101010101000
# pc new out
0110101010101000
# aluresult
11101100000110110111110001101100
# zero
0
# wrdata
00010011111001001110111000111100
# aluop
ALU_SUB
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01101000001111110110110011001111
# readdata2
00010011111001001110111000111100
# imm
00111011000011110100101110010010
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_B
# wb rd
01111
# wb write
1
# wb src
WBS_MEM

# test case 4
# pc old out
0100100100010111
# pc new out
1100110110110001
# aluresult
00001001001000101110000000000000
# zero
-
# wrdata
01010100101000010101110011101101
# aluop
ALU_SLL
# alusrc1
1
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01100100011111100111001001101111
# readdata2
01010100101000010101110011101101
# imm
01111011001100111000010010011010
# branchtype
BR_CNDI
# memread
1
# memwrite
0
# memtype
MEM_B
# wb rd
11100
# wb write
0
# wb src
WBS_OPC

# test case 5
# pc old out
1111111000101011
# pc new out
1010001001100001
# aluresult
00100000010011001111111011111011
# zero
-
# wrdata
01101010110101010010101001010001
# aluop
ALU_OR
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00011011001010001111011110010001
# readdata2
01101010110101010010101001010001
# imm
00100000010011001010101011010000
# branchtype
BR_BR
# memread
1
# memwrite
0
# memtype
MEM_HU
# wb rd
10100
# wb write
0
# wb src
WBS_MEM

# test case 6
# pc old out
1100101000100000
# pc new out
1100101000100000
# aluresult
11010101100100010001110100011011
# zero
-
# wrdata
01100111111110001000101100110101
# aluop
ALU_ADD
# alusrc1
0
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01101101100110001001000111100110
# readdata2
01100111111110001000101100110101
# imm
01110010111000100100000011010101
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
10000
# wb write
1
# wb src
WBS_ALU

# test case 7
# pc old out
1010101010101010
# pc new out
1010101010101010
# aluresult
01101011011001111001111110011000
# zero
-
# wrdata
01101011011001111001111110011000
# aluop
ALU_NOP
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01011110101010011101000100011100
# readdata2
01101011011001111001111110011000
# imm
00101000010100111000100001001110
# branchtype
BR_BR
# memread
1
# memwrite
0
# memtype
MEM_H
# wb rd
10010
# wb write
0
# wb src
WBS_MEM

# test case 8
# pc old out
0111110001000011
# pc new out
0111110001000011
# aluresult
00000000000000000011110000000010
# zero
-
# wrdata
01011100110111011010001011101011
# aluop
ALU_AND
# alusrc1
1
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01000111001100000001110110101010
# readdata2
01011100110111011010001011101011
# imm
00101111110100100011111000100110
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
11010
# wb write
1
# wb src
WBS_OPC

# test case 9
# pc old out
0101001010011110
# pc new out
0011111010000101
# aluresult
01000000110011110110000101111011
# zero
-
# wrdata
01001111010001000000011001001001
# aluop
ALU_XOR
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00001101010001101000101010011100
# readdata2
01001111010001000000011001001001
# imm
01001101100010011110101111100111
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_H
# wb rd
11001
# wb write
1
# wb src
WBS_MEM

# test case 10
# pc old out
0100100100101100
# pc new out
0100100100101100
# aluresult
00000000000000000000000000000001
# zero
0
# wrdata
01001111010001011001000111100001
# aluop
ALU_SLTU
# alusrc1
0
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00011000001010110110010011100001
# readdata2
01001111010001011001000111100001
# imm
01110101010011111110100010010001
# branchtype
BR_BR
# memread
1
# memwrite
0
# memtype
MEM_BU
# wb rd
00011
# wb write
0
# wb src
WBS_OPC

# test case 11
# pc old out
1100101111010101
# pc new out
1100101111010101
# aluresult
00000000000001100101111010101000
# zero
-
# wrdata
01100100000100011100101100000011
# aluop
ALU_SLL
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01011111101100000100110011100011
# readdata2
01100100000100011100101100000011
# imm
01101010000010001011000000101100
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
00100
# wb write
0
# wb src
WBS_ALU

# test case 12
# pc old out
0010001010010111
# pc new out
0010001010010111
# aluresult
00000000010010100100000010000001
# zero
-
# wrdata
01111110100101111011111110100110
# aluop
ALU_AND
# alusrc1
0
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00011100010011110101000010010011
# readdata2
01111110100101111011111110100110
# imm
01100011111110100100001011100101
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_HU
# wb rd
11100
# wb write
1
# wb src
WBS_MEM

# test case 13
# pc old out
1100011101001101
# pc new out
1100011101001101
# aluresult
00101110011111010101110001010111
# zero
-
# wrdata
00100001000110100111000101010110
# aluop
ALU_ADD
# alusrc1
1
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00000010101110111010111011111111
# readdata2
00100001000110100111000101010110
# imm
00101110011111001001010100001010
# branchtype
BR_CND
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
10101
# wb write
1
# wb src
WBS_OPC

# test case 14
# pc old out
1010000010001111
# pc new out
1010000010001111
# aluresult
10111101000111010000001000010011
# zero
-
# wrdata
01111000010000101101010001011110
# aluop
ALU_ADD
# alusrc1
0
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01000100110110100010110110110101
# readdata2
01111000010000101101010001011110
# imm
00011000110100010111000100000011
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
01101
# wb write
0
# wb src
WBS_ALU

# test case 15
# pc old out
1010001000100001
# pc new out
0100101100110111
# aluresult
00111111011111111010101110010111
# zero
-
# wrdata
00110000001111010011011111100110
# aluop
ALU_OR
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00111101001101101000001010000101
# readdata2
00110000001111010011011111100110
# imm
00000010011111011010100100010110
# branchtype
BR_CNDI
# memread
1
# memwrite
0
# memtype
MEM_B
# wb rd
01010
# wb write
1
# wb src
WBS_OPC

# test case 16
# pc old out
0101010011010010
# pc new out
1001000010101101
# aluresult
00000000000000000000000000000001
# zero
0
# wrdata
01100101010100000101011100111001
# aluop
ALU_SLT
# alusrc1
1
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00111010101100111101100111111001
# readdata2
01100101010100000101011100111001
# imm
00111010100011110011101111011011
# branchtype
BR_NOP
# memread
1
# memwrite
0
# memtype
MEM_HU
# wb rd
10010
# wb write
0
# wb src
WBS_MEM

# test case 17
# pc old out
1110111100101011
# pc new out
0110101001100110
# aluresult
00000000000000000000000000110100
# zero
-
# wrdata
01111101111010010110100010111000
# aluop
ALU_SRA
# alusrc1
0
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00110100111001001000010010001011
# readdata2
01111101111010010110100010111000
# imm
00010111110001010111101100111011
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_W
# wb rd
01100
# wb write
0
# wb src
WBS_ALU

# test case 18
# pc old out
0101101001100011
# pc new out
0101101001100011
# aluresult
00011111110111111011011110000111
# zero
0
# wrdata
00100001100011011010011001001110
# aluop
ALU_SUB
# alusrc1
0
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01110000000001100000010110100101
# readdata2
00100001100011011010011001001110
# imm
01010000001001100100111000011110
# branchtype
BR_BR
# memread
1
# memwrite
0
# memtype
MEM_W
# wb rd
00000
# wb write
0
# wb src
WBS_OPC

# test case 19
# pc old out
0000000100101011
# pc new out
0001010010110000
# aluresult
01111111011111111101111111111111
# zero
-
# wrdata
01111101001101100100101110111011
# aluop
ALU_OR
# alusrc1
0
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01101111011011111101110011000111
# readdata2
01111101001101100100101110111011
# imm
01001111000100100001001110000101
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_H
# wb rd
10001
# wb write
0
# wb src
WBS_ALU

# test case 20
# pc old out
0100110001010010
# pc new out
1100100000110011
# aluresult
01111100010100111010101000011000
# zero
-
# wrdata
00111010010010011110111000110011
# aluop
ALU_XOR
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01001100000110001110000111101001
# readdata2
00111010010010011110111000110011
# imm
01111100010100111110011001001010
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
01111
# wb write
1
# wb src
WBS_OPC

# test case 21
# pc old out
1100001010011101
# pc new out
1010101010011100
# aluresult
00011011010000001000111111011100
# zero
-
# wrdata
00000111111000111111111001011000
# aluop
ALU_XOR
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01001100100100000101110101011011
# readdata2
00000111111000111111111001011000
# imm
00011011010000000100110101000001
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_BU
# wb rd
00001
# wb write
0
# wb src
WBS_OPC

# test case 22
# pc old out
0111001111010101
# pc new out
0111001111010101
# aluresult
00111000100110010010110010101010
# zero
-
# wrdata
01001110010100110100100010000100
# aluop
ALU_NOP
# alusrc1
0
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00111110011010010001100111110001
# readdata2
01001110010100110100100010000100
# imm
00111000100110010010110010101010
# branchtype
BR_CND
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
10000
# wb write
1
# wb src
WBS_ALU

# test case 23
# pc old out
0101011111110110
# pc new out
0101011111110110
# aluresult
01111100010111111011010001000001
# zero
0
# wrdata
00000001101010101010000011111101
# aluop
ALU_SUB
# alusrc1
0
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01111110000010100101010100111110
# readdata2
00000001101010101010000011111101
# imm
01100111101001110001010101011000
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
10011
# wb write
1
# wb src
WBS_OPC

# test case 24
# pc old out
0001000110000100
# pc new out
0001010100111000
# aluresult
11111100110111111111010000100110
# zero
0
# wrdata
01110001100111010010110011100101
# aluop
ALU_SUB
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00011001100100001111011111011010
# readdata2
01110001100111010010110011100101
# imm
00000011001000000001110101011110
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
01110
# wb write
1
# wb src
WBS_ALU

# test case 25
# pc old out
1100000110110001
# pc new out
1100000110110001
# aluresult
00000000000000000000000000000001
# zero
0
# wrdata
01101010100000110101000101010001
# aluop
ALU_SLT
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00110011111100011001110101011011
# readdata2
01101010100000110101000101010001
# imm
00001001000110101001000111000000
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
01110
# wb write
0
# wb src
WBS_MEM

# test case 26
# pc old out
0111111011011111
# pc new out
1111000001011110
# aluresult
01010011000101010111011001110101
# zero
-
# wrdata
01001110001011110110111011111110
# aluop
ALU_ADD
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01010011111110011111100011001000
# readdata2
01001110001011110110111011111110
# imm
01010011000101001111011110010110
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
00100
# wb write
1
# wb src
WBS_ALU

# test case 27
# pc old out
1100011000000001
# pc new out
1100011000000001
# aluresult
00110001100000000100000000000000
# zero
-
# wrdata
01101110011011001101111000001110
# aluop
ALU_SLL
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00110010111100000001001010100100
# readdata2
01101110011011001101111000001110
# imm
00101100110111001000110001100111
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
10101
# wb write
1
# wb src
WBS_OPC

# test case 28
# pc old out
1010101011101001
# pc new out
1010101011101001
# aluresult
00000000000000000000000000000000
# zero
-
# wrdata
01100011000001101111011111011110
# aluop
ALU_SRL
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00111100110111101100100010101011
# readdata2
01100011000001101111011111011110
# imm
01101010101111101100111110001010
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_HU
# wb rd
11001
# wb write
1
# wb src
WBS_ALU

# test case 29
# pc old out
1110110010100010
# pc new out
1110110010100010
# aluresult
00011110000111000001010101111110
# zero
-
# wrdata
01110001110111000110100111111101
# aluop
ALU_XOR
# alusrc1
1
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01010111001100000000011000010001
# readdata2
01110001110111000110100111111101
# imm
00011110000111001111100111011100
# branchtype
BR_CNDI
# memread
1
# memwrite
0
# memtype
MEM_BU
# wb rd
01100
# wb write
1
# wb src
WBS_MEM

# test case 30
# pc old out
0100010011100111
# pc new out
0100000011111100
# aluresult
00000000000000000000000000000000
# zero
1
# wrdata
01000000110010010110101101101000
# aluop
ALU_SLTU
# alusrc1
0
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01110111010111011000110100010110
# readdata2
01000000110010010110101101101000
# imm
01001111011100101111110000010101
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
01001
# wb write
1
# wb src
WBS_ALU

# test case 31
# pc old out
0111000111110110
# pc new out
0111000111110110
# aluresult
11110000011111011000011111111100
# zero
0
# wrdata
00001111100000101110100111111010
# aluop
ALU_SUB
# alusrc1
1
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00011101001010110010100000010100
# readdata2
00001111100000101110100111111010
# imm
01101001101000100111010100011011
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
10010
# wb write
1
# wb src
WBS_ALU

# test case 32
# pc old out
0000000011010001
# pc new out
1100111101011100
# aluresult
10111100101111010010100010100010
# zero
0
# wrdata
01000011010000101101100000101111
# aluop
ALU_SUB
# alusrc1
1
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00000011001110010010000001111100
# readdata2
01000011010000101101100000101111
# imm
01111001001000101100111010001011
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
11110
# wb write
0
# wb src
WBS_OPC

# test case 33
# pc old out
0000000000110110
# pc new out
0000000000110110
# aluresult
10111011100110100100011100100101
# zero
-
# wrdata
00001000101101100010011100110111
# aluop
ALU_ADD
# alusrc1
0
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01000011011101010100111100101001
# readdata2
00001000101101100010011100110111
# imm
01111000001001001111011111111100
# branchtype
BR_CND
# memread
0
# memwrite
1
# memtype
MEM_HU
# wb rd
00011
# wb write
1
# wb src
WBS_OPC

# test case 34
# pc old out
1000110011101110
# pc new out
1011101001110101
# aluresult
00000001000110011101110000000000
# zero
-
# wrdata
00110101001000011111001100101001
# aluop
ALU_SLL
# alusrc1
1
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00100101101000101111111011110001
# readdata2
00110101001000011111001100101001
# imm
01011011110110000010110110000111
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
00011
# wb write
0
# wb src
WBS_MEM

# test case 35
# pc old out
1011010111011110
# pc new out
1110001100010010
# aluresult
01100010111011101010000100100011
# zero
-
# wrdata
01100000000100000010011001100100
# aluop
ALU_XOR
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00011111110101011100111000010101
# readdata2
01100000000100000010011001100100
# imm
01100010111011100001010011111101
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
00101
# wb write
0
# wb src
WBS_OPC

# test case 36
# pc old out
1111000100011011
# pc new out
1001111010101010
# aluresult
00000000000000000000000000000000
# zero
1
# wrdata
00111100101000010000010011101011
# aluop
ALU_SLT
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01001100011011101110111100001001
# readdata2
00111100101000010000010011101011
# imm
00100000101001111010110110001111
# branchtype
BR_NOP
# memread
1
# memwrite
0
# memtype
MEM_BU
# wb rd
00110
# wb write
0
# wb src
WBS_ALU

# test case 37
# pc old out
1000101110111111
# pc new out
1110011100011111
# aluresult
00110011001110110101101101100000
# zero
-
# wrdata
01010101010001001011110000110001
# aluop
ALU_NOP
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00010011001001101001000011101000
# readdata2
01010101010001001011110000110001
# imm
00110011001110110101101101100000
# branchtype
BR_NOP
# memread
1
# memwrite
0
# memtype
MEM_HU
# wb rd
01111
# wb write
1
# wb src
WBS_MEM

# test case 38
# pc old out
0010011000001101
# pc new out
0101011110110110
# aluresult
10011011100110001001110100110101
# zero
0
# wrdata
01110111011000001001101110001001
# aluop
ALU_SUB
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00001010100011011100111011011110
# readdata2
01110111011000001001101110001001
# imm
01101110111101010011000110101001
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_H
# wb rd
01001
# wb write
0
# wb src
WBS_MEM

# test case 39
# pc old out
1110101101000101
# pc new out
1000011001000000
# aluresult
00000001110011111111111111010101
# zero
-
# wrdata
01101011010001100110111001100010
# aluop
ALU_OR
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00010110010111111110100001101100
# readdata2
01101011010001100110111001100010
# imm
00000001110011111001110111010100
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_W
# wb rd
10110
# wb write
0
# wb src
WBS_ALU

# test case 40
# pc old out
1010100001001110
# pc new out
0100111010010011
# aluresult
00001010111110001001101100001010
# zero
-
# wrdata
00110001010001111110011000100000
# aluop
ALU_XOR
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01101111010011010011110101001111
# readdata2
00110001010001111110011000100000
# imm
01100101101101011010011001000101
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_B
# wb rd
01001
# wb write
0
# wb src
WBS_ALU

# test case 41
# pc old out
1110010000011110
# pc new out
1110010000011110
# aluresult
00110101011100011101010001011010
# zero
-
# wrdata
00000100110110000100100111111100
# aluop
ALU_NOP
# alusrc1
0
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00001111100010000111000000101100
# readdata2
00000100110110000100100111111100
# imm
00110101011100011101010001011010
# branchtype
BR_BR
# memread
1
# memwrite
0
# memtype
MEM_HU
# wb rd
11100
# wb write
1
# wb src
WBS_MEM

# test case 42
# pc old out
1111000011111110
# pc new out
1000000011010110
# aluresult
00000000000000001101000101010100
# zero
-
# wrdata
00111011100010100101000100001111
# aluop
ALU_SRL
# alusrc1
0
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01101000101010100100100000100000
# readdata2
00111011100010100101000100001111
# imm
01101100000001101000111111011000
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_HU
# wb rd
11100
# wb write
1
# wb src
WBS_MEM

# test case 43
# pc old out
0001000011111011
# pc new out
0001000011111011
# aluresult
00000000000000000000000000000000
# zero
1
# wrdata
01000101010010011110000111011010
# aluop
ALU_SLT
# alusrc1
0
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
01101001101110001101000010101011
# readdata2
01000101010010011110000111011010
# imm
01010111100000001110010101110100
# branchtype
BR_CNDI
# memread
0
# memwrite
1
# memtype
MEM_BU
# wb rd
10101
# wb write
1
# wb src
WBS_MEM

# test case 44
# pc old out
0010101000011000
# pc new out
1001000011101011
# aluresult
00000000000000000000000000000001
# zero
0
# wrdata
00011000010100011100011110010001
# aluop
ALU_SLT
# alusrc1
1
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00001101100100111011101001110111
# readdata2
00011000010100011100011110010001
# imm
00010001101110001101011001110100
# branchtype
BR_BR
# memread
0
# memwrite
1
# memtype
MEM_H
# wb rd
11000
# wb write
0
# wb src
WBS_ALU

# test case 45
# pc old out
1111100000101011
# pc new out
0001111001001101
# aluresult
00000000000000000000000000000000
# zero
1
# wrdata
00111110010010001001011001110001
# aluop
ALU_SLT
# alusrc1
0
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01111011001111110010001101000101
# readdata2
00111110010010001001011001110001
# imm
01110110101111000010011000100010
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_BU
# wb rd
00010
# wb write
0
# wb src
WBS_ALU

# test case 46
# pc old out
0010100011101111
# pc new out
0010100011101111
# aluresult
01110011100110000010100101001000
# zero
-
# wrdata
00011111011001011000000001000100
# aluop
ALU_XOR
# alusrc1
1
# alusrc2
1
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00001101101001111011011101111000
# readdata2
00011111011001011000000001000100
# imm
01110011100110000000000110100111
# branchtype
BR_CND
# memread
1
# memwrite
0
# memtype
MEM_BU
# wb rd
01001
# wb write
1
# wb src
WBS_ALU

# test case 47
# pc old out
0010111000010100
# pc new out
0010111000010100
# aluresult
00000000000000000000010101111101
# zero
-
# wrdata
00100001010011010110000011010001
# aluop
ALU_SRA
# alusrc1
0
# alusrc2
0
# alusrc3
0
# rs1
00000
# rs2
00000
# readdata1
00001010111110101100100110111010
# readdata2
00100001010011010110000011010001
# imm
01010110011010011000111101101001
# branchtype
BR_NOP
# memread
0
# memwrite
1
# memtype
MEM_HU
# wb rd
01111
# wb write
0
# wb src
WBS_ALU

# test case 48
# pc old out
0000010100010001
# pc new out
1101111000010100
# aluresult
01101001000110100000010001001010
# zero
-
# wrdata
01101001000110100000000101011011
# aluop
ALU_XOR
# alusrc1
1
# alusrc2
0
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
00000110111001101000000101100001
# readdata2
01101001000110100000000101011011
# imm
00100110101110111101100100000011
# branchtype
BR_NOP
# memread
1
# memwrite
0
# memtype
MEM_B
# wb rd
11100
# wb write
1
# wb src
WBS_MEM

# test case 49
# pc old out
1000101111100101
# pc new out
1011111010111000
# aluresult
11111011110010001100110010011100
# zero
0
# wrdata
01110110001110100101101101111111
# aluop
ALU_SUB
# alusrc1
0
# alusrc2
1
# alusrc3
1
# rs1
00000
# rs2
00000
# readdata1
01011001001010111111111101101111
# readdata2
01110110001110100101101101111111
# imm
01011101011000110011001011010011
# branchtype
BR_CNDI
# memread
1
# memwrite
0
# memtype
MEM_B
# wb rd
00000
# wb write
1
# wb src
WBS_OPC
